void InvCoVar (CoVar,CoInv)
float CoVar[3][3];
float CoInv[3][3];
{
   float  D;

   D = CoVar[0][0] * CoVar[1][1] * CoVar[2][2]  +  CoVar[0][1] * CoVar[1][2] * CoVar[2][0] +
       CoVar[0][2] * CoVar[1][0] * CoVar[2][1]  -  CoVar[0][2] * CoVar[1][1] * CoVar[2][0] -
       CoVar[0][0] * CoVar[1][2] * CoVar[2][1]  -  CoVar[0][1] * CoVar[1][0] * CoVar[2][2];

   CoInv[0][0] = (CoVar[1][1] * CoVar[2][2] - CoVar[1][2] * CoVar[2][1]) / D;
   CoInv[1][0] = (CoVar[1][2] * CoVar[2][0] - CoVar[1][0] * CoVar[2][2]) / D;
   CoInv[2][0] = (CoVar[1][0] * CoVar[2][1] - CoVar[1][1] * CoVar[2][0]) / D;

   CoInv[0][1] = (CoVar[0][2] * CoVar[2][1] - CoVar[0][1] * CoVar[2][2]) / D;
   CoInv[1][1] = (CoVar[0][0] * CoVar[2][2] - CoVar[0][2] * CoVar[2][0]) / D;
   CoInv[2][1] = (CoVar[0][1] * CoVar[2][0] - CoVar[0][0] * CoVar[2][1]) / D;

   CoInv[0][2] = (CoVar[0][1] * CoVar[1][2] - CoVar[0][2] * CoVar[1][1]) / D;
   CoInv[1][2] = (CoVar[0][2] * CoVar[1][0] - CoVar[0][0] * CoVar[1][2]) / D;
   CoInv[2][2] = (CoVar[0][0] * CoVar[1][1] - CoVar[0][1] * CoVar[1][0]) / D;
}
